In a basic desktop computing environment, a printer or other production device is connected directly to a computer. Production devices include printers; finishers such as a binder, sorter, or folder; e-mail clients; facsimile devices; web server; and electronic data storage devices. However, production devices are not limited to those listed but may include any device capable of electronically or physically saving, displaying, formatting, or transferring a target document. To produce a document, a user either opens or creates an electronic document using a word processor or other application. The user then issues a production request for a selected production device. A driver, specific to the selected production device—a printer in this example—generates a user interface allowing the user to select options for formatting the document. Among others, these options can include the number of copies, print resolution, specific paper source and output bins. With the desired production options selected, the driver formats the production request into a specialized series of commands directing the printer to produce the document on one or more sheets of paper. To add a new production device, the user simply connects the new device and installs the new driver for that device on the computer.
In a more complex environment, the computer and production devices are components of a larger network of electronic devices. A number of network users can share a common production device such as a printer. Using device management software application, a system administrator is able to manage and limit access to that printer. While new printers and other production devices can be easily connected to the network, drivers for those devices must be individually installed on each client computer that accesses the new device. As updates for the device drivers become available, the updates must also be installed on each client computer.
With the ever-expanding resources provided by the Internet, document production has taken a dramatic step forward. Becoming more autonomous, production devices are being designed to connect directly to and communicate over the Internet. Rather than being controlled by a device driver installed on a desk-top computer or separate print server, these new production devices contain their own programming.
In one new system, a client computer, utilizing a web browser rather than a particular device driver, accesses a web server embedded in a production device such as a printer. Representing that device on the network, the embedded web server allows the device to be connected directly to the network rather to another device such as a desktop computer. When accessed by a browser, the embedded web server returns a web page containing controls for formatting and printing a selected document. With the document and desired format options selected, the browser returns the document and the user's formatting instructions to the embedded web server, which, in turn, self-manages production of the document on the device.
In another new system, the client computer, using a browser, accesses a print service—a web site hosted by a server computer. The print service presents the user with a selection of printers from which to choose. The browser returns the user's printer selection along with the location of the components of the document to be printed. For example, the text of the document may be located in one location on the network while the color graphics for a cover page may be located elsewhere. The print service then directs the web browser to a server embedded in or otherwise representing the selected printer. That web server returns a web page allowing the user to select formatting options for the document. With the options selected, the print service compiles the document's components and delivers them along with the selected formatting options to the web server representing the selected production device.
Generally, these new systems are designed to eliminate the need for centralized device management. However, as it is with conventional document production, it is desirable, if not essential, in some cases to provide some centralized control over a group of production devices. Centralized control is useful to mediate access to a particular device and to provide temporary storage for production data sent to each device. For example, a professional printing business may provide access to a group of production devices over the Internet. That business, however, may desire to limit access to those devices to a group of specified customers. Moreover, production devices such as printers are capable of printing one document at a time. Where multiple requests are simultaneously directed to a single production device, the business may desire to temporarily store each successive request in a central queue releasing the request one at a time as the production device becomes available. Consequently, what is needed is a method for centrally managing and mediating access to production devices within these new systems for document production.